Telegram Group & Telegram Channel
🔎 Команда дня: быстрый рецепт профилирования с cProfile и pstats

🔍 Профилирование — это способ найти узкие места в производительности кода.

Вы можете точно узнать, какие функции тормозят выполнение, где тратится больше всего времени, и какие вызовы стоит оптимизировать.

Python поставляется с двумя встроенными профайлерами:
🔴 cProfile — написан на C, работает быстрее и точнее,
🔴 profile — на Python, обычно медленнее.

✔️ Обычно выбираем cProfile для измерения производительности.

Как профилировать скрипт


1️⃣ Запустите скрипт с профилированием и сохраните результат в файл:
python -m cProfile -o profile my_script.py


2️⃣ Для анализа результатов используйте модуль pstats:
python -m pstats profile <<< $'sort cumtime\nstats 1000' | less


🔴 sort cumtime — сортируем функции по кумулятивному времени (время выполнения функции плюс все вызовы внутри неё)
🔴 stats 1000 — показываем первые 1000 строк статистики
🔴 less — удобный просмотр с прокруткой (нажмите q для выхода)

Полезные опции

✔️ Профилируйте модули через -m:
python -m cProfile -o profile -m module_name [args]


✔️ Для сравнения результатов до и после оптимизации используйте разные имена файлов:
python -m cProfile -o before.profile script.py
python -m cProfile -o after.profile script.py


Можно менять сортировку по другим метрикам:

🔴 time — время выполнения только самой функции
🔴 calls — количество вызовов функции (может помочь найти «горячие» участки)

Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/pyproglib/6801
Create:
Last Update:

🔎 Команда дня: быстрый рецепт профилирования с cProfile и pstats

🔍 Профилирование — это способ найти узкие места в производительности кода.

Вы можете точно узнать, какие функции тормозят выполнение, где тратится больше всего времени, и какие вызовы стоит оптимизировать.

Python поставляется с двумя встроенными профайлерами:
🔴 cProfile — написан на C, работает быстрее и точнее,
🔴 profile — на Python, обычно медленнее.

✔️ Обычно выбираем cProfile для измерения производительности.

Как профилировать скрипт


1️⃣ Запустите скрипт с профилированием и сохраните результат в файл:

python -m cProfile -o profile my_script.py


2️⃣ Для анализа результатов используйте модуль pstats:
python -m pstats profile <<< $'sort cumtime\nstats 1000' | less


🔴 sort cumtime — сортируем функции по кумулятивному времени (время выполнения функции плюс все вызовы внутри неё)
🔴 stats 1000 — показываем первые 1000 строк статистики
🔴 less — удобный просмотр с прокруткой (нажмите q для выхода)

Полезные опции

✔️ Профилируйте модули через -m:
python -m cProfile -o profile -m module_name [args]


✔️ Для сравнения результатов до и после оптимизации используйте разные имена файлов:
python -m cProfile -o before.profile script.py
python -m cProfile -o after.profile script.py


Можно менять сортировку по другим метрикам:

🔴 time — время выполнения только самой функции
🔴 calls — количество вызовов функции (может помочь найти «горячие» участки)

Библиотека питониста #буст

BY Библиотека питониста | Python, Django, Flask


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/pyproglib/6801

View MORE
Open in Telegram


Библиотека питониста | Python Django Flask Telegram | DID YOU KNOW?

Date: |

Telegram announces Search Filters

With the help of the Search Filters option, users can now filter search results by type. They can do that by using the new tabs: Media, Links, Files and others. Searches can be done based on the particular time period like by typing in the date or even “Yesterday”. If users type in the name of a person, group, channel or bot, an extra filter will be applied to the searches.

How Does Bitcoin Mining Work?

Bitcoin mining is the process of adding new transactions to the Bitcoin blockchain. It’s a tough job. People who choose to mine Bitcoin use a process called proof of work, deploying computers in a race to solve mathematical puzzles that verify transactions.To entice miners to keep racing to solve the puzzles and support the overall system, the Bitcoin code rewards miners with new Bitcoins. “This is how new coins are created” and new transactions are added to the blockchain, says Okoro.

Библиотека питониста | Python Django Flask from tw


Telegram Библиотека питониста | Python, Django, Flask
FROM USA